_Pragma("once");

#include "Workable.h"

#include "DmxCommunicator.h"
#include "SingletonTemplate.h"
#include "LoopControlInfo.h"


class DmxDispatcher : public Workable<DmxDispatcher> {
    friend class SingletonTemplate<DmxDispatcher>;
    public:
        /** Default constructor */
        DmxDispatcher();
        /** Default destructor */
        ~DmxDispatcher();



    bool initial() {
        return true;
    }

    bool uninitial() {

        return true;
    }

    bool doWork();
    protected:
    DmxCommunicator mcommunicator;
    LoopControlInfoPtr mcontrolInfoPtr;

    uint8_t mbuffer[514];
};



using DmxDispatcherSingleton = SingletonTemplate<DmxDispatcher>;

